//带分组信息的添加用户
var addUserWithGroup = function (){
	var valid = $('#userAddForm').form('validate');
	if (valid) {
		var selectRole = $('#dataShow').datagrid('getSelected');
		if (selectRole == null) {
			$.messager.alert("错误信息","请选择用户角色", 'error');
			return;
		}
		
		var param = $('#userAddForm').serializeJson(true);
		param.roleid = selectRole.id;
		param.rolename = selectRole.name;
		postAddUser(param,true);
	}
};

//不带分组的添加用户
var addUser = function (){
	var valid = $('#userAddForm').form('validate');
	if (valid) {
		var param = $('#userAddForm').serializeJson(true);
		
		var groupidSelect = $("#groupid").combotree("getValue");
		var groupidSelectText =$('#groupid').combotree('getText')
		param.groupid = groupidSelect;
		param.groupname = groupidSelectText;
		
		if(groupidSelect == '' || groupidSelect == null){
			$.messager.alert("错误信息","请选择用户分组", 'error');
			return;
		}
		var selectRole = $('#dataShow').datagrid('getSelected');
		if (selectRole == null) {
			$.messager.alert("错误信息","请选择用户角色", 'error');
			return;
		}
		param.roleid = selectRole.id;
		param.rolename = selectRole.name;
		postAddUser(param,false);
	}
	
};

//用户添加请求
var postAddUser = function(param,withGroup){
	$.axs("user/doUserAdd.action", param, 
            function(data){
		if(data.status == 1){
			$.messager.alert("提示信息", data.msg, 'info', function() {
				
				if(withGroup){
					addTab('分组管理','view/goGroupList.action','#tt','parent');
					resetForm();
				}else{
					addTab('用户查询','view/goUserList.action','#tt','parent');
					resetFormNoGroup();
					
				}
			});
		}else{
			$.messager.alert("错误信息", data.msg, 'error');
		}
	});
};

var resetForm = function(){
	$("#userAddForm").form("reset");
	$('#dataShow').datagrid('getSelections').length=0;  //重设选中行
};

var resetFormNoGroup = function(){
	resetForm();
	 $("#groupid").combobox('clear');
  	 $("#groupid").combobox('loadData', {});
};

//获取批量ID
var getSelectionIds = function(rows){
	var ids = [];
	for ( var i = 0; i < rows.length; i++) {
		ids.push(rows[i].id);
	}
	return  ids.join(',');
};

//删除批量用户
var removeBatch = function(gridId){
	var rows = $('#'+gridId).datagrid('getSelections');
	if (rows.length == 0) {
		$.messager.alert('提示信息', "请选择待操作的记录", 'info');
	} else {
		$.messager.confirm('提示信息', "确定要删除选中的用户吗？（此操作无法恢复.）", function(r) {
			if (r) {
				var param = getSelectionIds(rows);
				deleteUser(param,gridId);
			}
		});
	}
};

//删除单个用户
var removeSingle = function(userId,gridId){
	$.messager.confirm('提示信息', "确定要删除用户吗？（此操作无法恢复.）", function(r) {
		if (r) {
			deleteUser(userId,gridId);
		}
	});
};

//删除用户请求
var deleteUser = function(userIds,gridId){
	$.axs("user/doUserRemove.action", {'userIds':userIds}, function(data){
		if(data.status == 1){
			$.messager.alert("提示信息", data.msg, 'info', function() {
				$('#'+gridId).datagrid('load', getJSONParam());
				if("dataShow" == gridId ){
					parent.refreshGrid();
				}
			});
		}else{
			$.messager.alert("错误信息", data.msg, 'error');
		}
	});
};

function disableBatch(gridId) {
	var rows = $('#'+gridId).datagrid('getSelections');
	if (rows.length == 0) {
		$.messager.alert('提示信息', "请选择待操作的记录", 'info');
	} else {
		$.messager.confirm('提示信息', "确定要禁用选中的用户吗？", function(r) {
			if (r) {
				var userIds = getSelectionIds(rows);
				updateUserStateFunc(gridId,userIds,2);
			}
		});
	}
}

//批量更新用户状态
function enableBatch(gridId) {
	var rows = $('#'+gridId).datagrid('getSelections');
	if (rows.length == 0) {
		$.messager.alert('提示信息', "请选择待操作的记录", 'info');
	} else {
		$.messager.confirm('提示信息', "确定要启用选中的用户吗？", function(r) {
			if (r) {
				var userIds = getSelectionIds(rows);
				updateUserStateFunc(gridId,userIds,0);
			}
		});
	}
}

//更新单个用户状态
function updateUserState(gridId,userId,updateState){
	$.messager.confirm('提示信息', "确定要启用选中的用户吗？", function(r) {
		if (r) {
			updateUserStateFunc(gridId,userId,updateState);
		}
	});
}


//更新用户状态请求
function updateUserStateFunc(gridId,userIds,updateState){
	$.axs("user/doUserStateSet.action", {'userIds':userIds,'userState':updateState}, function(data){
		if(data.status == 1){
			$.messager.alert("提示信息", data.msg, 'info', function() {
				$('#'+gridId).datagrid('load', getJSONParam());
			});
		}else{
			$.messager.alert("错误信息", data.msg, 'error');
		}
	});
}

// 用户角色设置
function userRoleSetBatch(gridId){
	var rows = $('#'+gridId).datagrid('getSelections');
	if (rows.length == 0) {
		$.messager.alert('提示信息', "请选择待操作的记录", 'info');
	} else {
		$.messager.confirm('提示信息', "确定要更换用户的分组吗？", function(r) {
		if (r) {
		
		var userIds = getSelectionIds(rows);
		$.messager.alert('提示信息', "已经打开新窗口设置用户角色，完成后点击确定刷新用户列表", 'info',function(){
			$('#'+gridId).datagrid('unselectAll');
			$('#'+gridId).datagrid('reload');
			});
		  addTab('用户角色设置', 'view/goUserRoleSet.action?userIds='+userIds, '#tt', "parent.parent");
			}
		});
	}
}

//用户分组设置
function userGroupSetBatch(gridId){
	var rows = $('#'+gridId).datagrid('getSelections');
	if (rows.length == 0) {
		$.messager.alert('提示信息', "请选择待操作的记录", 'info');
	} else {
		$.messager.confirm('提示信息', "确定要更换用户的分组吗？", function(r) {
			if (r) {
				$.messager.alert('<s:text name="mes.message"/>', "已经打开新窗口设置用户分组，完成后点击确定刷新用户列表", 'info'
					,function(){
					$('#'+gridId).datagrid('unselectAll');
					$('#'+gridId).datagrid('reload');});
				var userIds = getSelectionIds(rows);
				addTab('用户分组设置', 'view/goUserGroupSet.action?userIds='+userIds, '#tt', "parent.parent");
			}
		});
	}
}

//批量重置密码
function userPwdResetBatch(gridId){
	var rows = $('#'+gridId).datagrid('getSelections');
	if (rows.length == 0) {
		$.messager.alert('提示信息', "请选择待操作的记录", 'info');
	} else {
		$.messager.confirm('提示信息', "确定要重置选中用户的密码吗？", function(r) {
			if (r) {
				var userIds = getSelectionIds(rows);
				$.axs("user/doUserPasswordReset.action", {'userIds':userIds}, function(data){
					if(data.status == 1){
						$.messager.alert("提示信息", data.msg, 'info');
					}else{
						$.messager.alert("错误信息", data.msg, 'error');
					}
				});
			}
		});
	}
}
